Retour index

Adressage indirect en assembleur 68000

Retour niveau sup

Le mode adressage indirect de base se décline en plusieurs sous-modes. La forme syntaxique de référence est un registre d'adresses entre parenthèses : (A2). Dans les exemples présentés ci-dessous pour illustrer les différentes variantes du mode indirect en assembleur 68000, seule la source ou la destination concerne ce mode. Dans toutes les variantes, le mode d'adressage indirect peut concerner le source et/ou la destination.

Indirect

L'adresse effective de la donnée est contenue dans un pointeur d'adresses.

 

move.b d3, (A1)

L'adresse effective de la destination est contenue dans A1.

 

 

Indirect avec déplacement

L'adresse effective est la somme du contenu du pointeur d'adresses et d'un déplacement fixe.

 

move.b $42(A1), d2

L'adresse effective de la source est la somme de l'adresse contenue dans A1 et du déplacement $42.

 

 

Indirect indexé

L'adresse effective est la somme du contenu du pointeur d'adresses et d'un index contenu dans un registre de données.

 

move.b (A1, d2.l), d4

L'adresse effective de la source est la somme de l'adresse contenue dans A1 et de la valeur de l'index contenue dans d2.l.

 

 

Indirect indexé avec déplacement

L'adresse effective est la somme du contenu d'un pointeur d'adresses, d'un déplacement fixe et d'un index contenu dans un registre de données.

 

move.l d0, $70(A3,d4.l)

L'adresse effective de la destination est la somme de l'adresse contenue dans A3, de la valeur de l'index contenue dans d2.l et du déplacement $70.

 

 

Indirect post incrémenté

L'adresse effective est contenue dans un pointeur d'adresses. Le pointeur est incrémenté à la fin de l'instruction. L'incrément est fonction de la taille de la donnée traitée :
.b : incrément de 1
.w : incrément de 2
.l : incrément de 4
Ce mode d'adressage est principalement utilisé pour la gestion de la pile.

 

move.w (A3)+,d2

L'adresse effective de la source est contenue dans A3. A3 est incrémenté de 2 à la fin de l'instruction.

 

 

Indirect pré décrémenté

L'adresse effective de la source ou de la destination est contenue dans un pointeur d'adresses. Le pointeur est décrémenté au début de l'instruction. L'incrément est fonction de la taille de la donnée traitée :
.b : incrément de 1
.w : incrément de 2
.l : incrément de 4
Ce mode d'adressage est principalement utilisé pour la gestion de la pile.

 

Move.l d4, -(A1)

L'adresse effective de la destination est contenue dans A1. A1 est décrémenté de 4 au début de l'instruction.

Retour index

Suite